Testing Fault-Tolerant Protocols by Heuristic Fault Injection



Yinong Chen 1 Klaus Echtle 2 Winfried Gorke 1
1) Universitat Karlsruhe, Inst. fur Rechnerentwurf und Fehlertoleranz,
Postfach 6980, W-7500 Karlsruhe, Germany
2) Universitat Dortmund, Fachbereich Informatik
Postfach 500 500, W-4600 Dortmund 50, Germany

Abstract

A fault-tolerant protocol is defined by the exchange of messages
providing correct results to those units which are free of operation faults. We
propose a hierarchical test strategy with heuristic fault case generation at the
message layer to test whether a fault-tolerant protocol is able to tolerate the
pre-defined faults. Messages sent by faulty units are replaced by heuristically
generated fault cases which intend to cover all program paths of the faultless
protocol units subsequently. Since this well-aimed fault case generation induces
complex problems, we use special characteristics of fault-tolerant protocols to
reduce the complexity. In this paper we outline our hierarchical test strategy
and explain the heuristic fault case generation in detail. The test strategy is
being implemented on a network of Macintosh computers.

Keywords: Protocol test, hierarchical test, fault-tolerant software,
heuristic fault case generation, fault injection.